In a BIOS boot up process performed in an information processing apparatus that includes multiple processors, a representative processor, i.e., a System Boot Strap Processor (SBSP), in the information processing apparatus sequentially performs an initialization process on hardware and an log (character string information) output process of outputting logs to a serial port. When the BIOS boot up process has been completed, the information processing apparatus gives resource information on a processor, a main memory, a device, or the like included in the information processing apparatus to an operating system (OS) and executes a boot up process on the OS.
In the BIOS boot up process, the SBSP performs most of the processes. During this time, application processors (APs) that are all of the other processors than the SBSP wait without processing anything until a processing request is sent from the SBSP.
Log outputs to the serial port are performed at 115 kbps (kilobits/sec), which greatly differs from the operation speed (2 GHz or more) of the processors. Consequently, a waiting time for the serial port frequently occurs during the BIOS boot up process. When the information processing apparatus is booted up, because only the SBSP outputs a log to the serial port while performing the BIOS boot up process, such as hardware initialization, booting up of the OS is delayed by the time corresponding to the waiting time for the serial port. In contrast, if an amount of logs is reduced in order to speed up booting up the OS, log information that is needed for analysis when a problem occurs in the information processing apparatus becomes insufficient.
As a conventional technology related to log collection or log processing, there is a technology in which, in a CPU that includes multiple processor cores, one of the processor cores is used as a failure process processor core that collects or records failure information (for example, Japanese Laid-open Patent Publication No. 2009-129101). Furthermore, there is also a CPU system that includes a common RAM, on a system bus, which a main CPU can simultaneously write in and read from logging information stored in the main storage and that includes a sub CPU that transfers data in the common RAM to a nonvolatile memory (for example, Japanese Laid-open Patent Publication No. 07-319816).
Furthermore, there is a conventional technology that reduces, in a multiple processor system, the time taken to acquire failure information by performing, using multiple processors in parallel, acquisition of the failure information at the time of the occurrence of a failure (for example, Japanese Laid-open Patent Publication No. 11-338838). Furthermore, there is a conventional technology that gives a log buffer acquired from a pool in response to an acquisition request of the log buffer to a request source, and that returns, in response to a release request of the log buffer, an extended memory that is associated with an extended log buffer back to the memory and a log buffer back to the pool (for example, Japanese Laid-open Patent Publication No. 01-2149).
Furthermore, there is a conventional technology that outputs failure information to an auxiliary storage unit on the basis of a failure code log buffer that accumulates failure codes each of which is associated with the type of failure that has occurred and a failure log information table that stores therein failure log information (for example, Japanese Laid-open Patent Publication No. 04-195230).
Although a tradeoff occurs between the boot up time of an OS and the amount of log information to be output, a BIOS in which an amount of log information is reduced by giving priority to the boot up time of the OS is usually used. Consequently, there is a problem in that, if a failure occurs at the time of booting up the OS, it takes time to investigate the failure because log analysis needs to be performed by switching to a BIOS in which the amount of log information is increased and reproducing the failure.
Furthermore, in a case of a failure that is not frequently occurs, the failure may sometimes be not able to be reproduced even if a reproduction environment is prepared. Furthermore, if a failure that depends on a timing occurs, the failure itself may not possibly occur in the reproduction environment due to variation in the BIOS processing time.